package com.ruoyi.manage.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 路线信息对象 g_road_basic
 * 
 * @author ruoyi
 * @date 2025-10-11
 */
public class GRoadBasic extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 单位ID */
    @Excel(name = "单位ID")
    private Long deptId;

    /** 路段编码 */
    @Excel(name = "路段编码")
    private String ldbm;

    /** 路线编码 */
    @Excel(name = "路线编码")
    private String lxbm;

    /** 路线名称 */
    @Excel(name = "路线名称")
    private String lxmc;

    /** 路段顺序号 */
    @Excel(name = "路段顺序号")
    private Long sortNo;

    /** 起点名称 */
    @Excel(name = "起点名称")
    private String startName;

    /** 起点桩号 */
    @Excel(name = "起点桩号")
    private BigDecimal startNo;

    /** 节点名称 */
    @Excel(name = "节点名称")
    private String endName;

    /** 节点桩号 */
    @Excel(name = "节点桩号")
    private BigDecimal endNo;

    /** 技术等级 */
    @Excel(name = "技术等级")
    private String roadLevel;

    /** 路面类型 */
    @Excel(name = "路面类型")
    private String roadSurfaceType;

    /** 路段里程 */
    @Excel(name = "路段里程")
    private BigDecimal roadLength;

    /** 路面宽度 */
    @Excel(name = "路面宽度")
    private BigDecimal roadWidth;

    /** 路基宽度 */
    @Excel(name = "路基宽度")
    private BigDecimal roadbedWidth;

    /** 面层厚度 */
    @Excel(name = "面层厚度")
    private BigDecimal roadSurfaceHeight;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 更新时间 */
    private Date updatedAt;

    /** 删除时间 */
    private Date deleteAt;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }

    public void setLdbm(String ldbm) 
    {
        this.ldbm = ldbm;
    }

    public String getLdbm() 
    {
        return ldbm;
    }

    public void setLxbm(String lxbm) 
    {
        this.lxbm = lxbm;
    }

    public String getLxbm() 
    {
        return lxbm;
    }

    public void setLxmc(String lxmc) 
    {
        this.lxmc = lxmc;
    }

    public String getLxmc() 
    {
        return lxmc;
    }

    public void setSortNo(Long sortNo) 
    {
        this.sortNo = sortNo;
    }

    public Long getSortNo() 
    {
        return sortNo;
    }

    public void setStartName(String startName) 
    {
        this.startName = startName;
    }

    public String getStartName() 
    {
        return startName;
    }

    public void setStartNo(BigDecimal startNo) 
    {
        this.startNo = startNo;
    }

    public BigDecimal getStartNo() 
    {
        return startNo;
    }

    public void setEndName(String endName) 
    {
        this.endName = endName;
    }

    public String getEndName() 
    {
        return endName;
    }

    public void setEndNo(BigDecimal endNo) 
    {
        this.endNo = endNo;
    }

    public BigDecimal getEndNo() 
    {
        return endNo;
    }

    public void setRoadLevel(String roadLevel) 
    {
        this.roadLevel = roadLevel;
    }

    public String getRoadLevel() 
    {
        return roadLevel;
    }

    public void setRoadSurfaceType(String roadSurfaceType) 
    {
        this.roadSurfaceType = roadSurfaceType;
    }

    public String getRoadSurfaceType() 
    {
        return roadSurfaceType;
    }

    public void setRoadLength(BigDecimal roadLength) 
    {
        this.roadLength = roadLength;
    }

    public BigDecimal getRoadLength() 
    {
        return roadLength;
    }

    public void setRoadWidth(BigDecimal roadWidth) 
    {
        this.roadWidth = roadWidth;
    }

    public BigDecimal getRoadWidth() 
    {
        return roadWidth;
    }

    public void setRoadbedWidth(BigDecimal roadbedWidth) 
    {
        this.roadbedWidth = roadbedWidth;
    }

    public BigDecimal getRoadbedWidth() 
    {
        return roadbedWidth;
    }

    public void setRoadSurfaceHeight(BigDecimal roadSurfaceHeight) 
    {
        this.roadSurfaceHeight = roadSurfaceHeight;
    }

    public BigDecimal getRoadSurfaceHeight() 
    {
        return roadSurfaceHeight;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    public void setDeleteAt(Date deleteAt) 
    {
        this.deleteAt = deleteAt;
    }

    public Date getDeleteAt() 
    {
        return deleteAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("deptId", getDeptId())
            .append("ldbm", getLdbm())
            .append("lxbm", getLxbm())
            .append("lxmc", getLxmc())
            .append("sortNo", getSortNo())
            .append("startName", getStartName())
            .append("startNo", getStartNo())
            .append("endName", getEndName())
            .append("endNo", getEndNo())
            .append("roadLevel", getRoadLevel())
            .append("roadSurfaceType", getRoadSurfaceType())
            .append("roadLength", getRoadLength())
            .append("roadWidth", getRoadWidth())
            .append("roadbedWidth", getRoadbedWidth())
            .append("roadSurfaceHeight", getRoadSurfaceHeight())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .append("deleteAt", getDeleteAt())
            .toString();
    }
}
